/**
 * 初始化文章评论详情对话框
 */
var CommentInfoDlg = {
    commentInfoData : {},
    validateFields: {
        status: {
            validators: {
                notEmpty: {
                    message: '状态不能为空'
                }
            }
        },
        content: {
            validators: {
                notEmpty: {
                    message: '回复不能为空'
                }
            }
        },
        contentText: {
            validators: {
                notEmpty: {
                    message: '回复不能为空'
                }
            }
        }
    }
};


/**
 * 验证数据是否为空
 */
CommentInfoDlg.validate = function () {
    $('#commentForm').data("bootstrapValidator").resetForm();
    $('#commentForm').bootstrapValidator('validate');
    return $("#commentForm").data('bootstrapValidator').isValid();
}


/**
 * 清除数据
 */
CommentInfoDlg.clearData = function() {
    this.commentInfoData = {};
}

/**
 * 设置对话框中的数据
 *
 * @param key 数据的名称
 * @param val 数据的具体值
 */
CommentInfoDlg.set = function(key, val) {
    return Feng.formSetData(key,val,this,"commentInfoData");

}

/**
 * 设置对话框中的数据
 *
 * @param key 数据的名称
 * @param val 数据的具体值
 */
CommentInfoDlg.get = function(key) {
    return $("#" + key).val();
}

/**
 * 关闭此对话框
 */
CommentInfoDlg.close = function() {
    parent.layer.close(window.parent.Comment.layerIndex);
}

/**
 * 收集数据
 */
CommentInfoDlg.collectData = function() {
    this
    .set('id')
    .set('sid')
    .set('userId')
    .set('pid')
    .set('qq')
    .set('nickname')
    .set('avatar')
    .set('email')
    .set('url')
    .set('status')
    .set('ip')
    .set('lng')
    .set('lat')
    .set('address')
    .set('os')
    .set('osShortName')
    .set('browser')
    .set('browserShortName')
    .set('content')
    .set('remark')
    .set('support')
    .set('oppose')
    .set('createTime')
    .set('updateTime').set("contentText").set("sendEmail");
}

/**
 * 回复
 */
CommentInfoDlg.reply = function () {
    this.clearData();
    this.collectData();

    if (!CommentInfoDlg.validate()) {
        return;
    }
    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/article/comment/reply", function(data){
        Feng.pass(data,function () {
            Feng.success("回复成功!");
            window.parent.Comment.table.refresh();
            CommentInfoDlg.close();
        });
    },function(data){
        Feng.error("回复失败!" + data.msg + "!");
    });
    ajax.set(this.commentInfoData);
    ajax.start();
}

/**
 * 回复
 */
CommentInfoDlg.check = function () {
    this.clearData();
    this.collectData();
    if (!CommentInfoDlg.validate()) {
        return;
    }
    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/article/comment/check", function(data){
        Feng.pass(data,function () {
            Feng.success("审核成功!");
            window.parent.Comment.table.refresh();
            CommentInfoDlg.close();
        });
    },function(data){
        Feng.error("审核失败!" + data.msg + "!");
    });
    ajax.set(this.commentInfoData);
    ajax.start();
}

/**
 * 提交添加
 */
CommentInfoDlg.addSubmit = function() {

    this.clearData();
    this.collectData();

    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/article/comment/add", function(data){
        Feng.pass(data,function () {
            Feng.success("添加成功!");
            window.parent.Comment.table.refresh();
            CommentInfoDlg.close();
        });
    },function(data){
        Feng.error("添加失败!" + data.msg + "!");
    });
    ajax.set(this.commentInfoData);
    ajax.start();
}

/**
 * 提交修改
 */
CommentInfoDlg.editSubmit = function() {

    this.clearData();
    this.collectData();

    //提交信息
    var ajax = new $ax(Feng.ctxPath + "/article/comment/update", function(data){
        Feng.pass(data,function () {
            Feng.success("修改成功!");
            window.parent.Comment.table.refresh();
            CommentInfoDlg.close();
        });
    },function(data){
        Feng.error("修改失败!" + data.msg + "!");
    });
    ajax.set(this.commentInfoData);
    ajax.start();
}


/**
 * 设置对话框中的数据
 *
 * @param key 数据的名称
 * @param val 数据的具体值
 */
CommentInfoDlg.changeStatus = function(that) {
    if(that){
        var val =  $(that).val();
        if(val=='REJECT'){
            $("#status-remark").show();
        }else{
            $("#status-remark").hide();
        }
    }
}


$(function () {
    //初始化备注框
    CommentInfoDlg.changeStatus($("#status"));
    Feng.initValidator("commentForm", CommentInfoDlg.validateFields);
});